home *** CD-ROM | disk | FTP | other *** search
/ Winzipper / Winzipper_ISO.iso / nt4.0 workstation / DRVLIB.NIC / ALANENT / OEMSETUP.INF < prev   
INI File  |  1996-07-27  |  38KB  |  1,094 lines

  1. ;-------------------------------------------------------------------------
  2. ;    Modification History
  3. ;-------------------------------------------------------------------------
  4. ; 21 jul 95    shiva        First version
  5. ;
  6. ; 25 Oct 95    shiva        Auto configuration option added
  7. ;
  8. ;                Configuration using dll 
  9. ;
  10. ; 31 Oct 95    shiva        DependOnService bug fixed 
  11. ;
  12. ; 18 Dec 95    shiva        default mtu size changed to 1516
  13. ;
  14. ; 19 Dec 95    shiva        MTU size and the LAN type configured from
  15. ;                the DLL
  16. ;
  17. ; 10 Jan 96    shiva        Not copying msvcrt20.dll 
  18. ;
  19. ; 15 Mar 96    shiva        Deleting files using DeleteList
  20. ;
  21. ; 13 May 96    shiva        Modified for Miniport driver interface
  22. ; 3  July 96    shiva        Unable to copy 'adptalan.dll' to SystemRoot
  23. ;                directory during NT install time. Loading
  24. ;                the dll from the Installation media.
  25. ;
  26. ; 11 July 96    shiva        Not allowing the user to install the same
  27. ;                ELAN twice
  28. ;
  29. ;                Added 'GetBusTypeDialog' for getting the
  30. ;                Bus and Bus type information
  31. ;
  32. [Identification]
  33.     OptionType = NetAdapter
  34.  
  35. [PlatformsSupported]
  36.     PCI
  37.  
  38. [Options]
  39.     ALANE0
  40.     ALANE1
  41.     ALANE2
  42.     ALANE3
  43.  
  44. [FileConstants]
  45. ;
  46. ; Parameters for ELAN
  47. ;
  48. PortIndex = "0"        ;/* must be 0 - 2 */
  49. MTUSize   = "1516"
  50. ELANType  = "802.3"
  51. ServerType = "lecs"
  52. UNIversion = "3.0"
  53. ServerAddress = "47.00.79.00.00.00.00.00.00.00.00.00.00.00.a0.3e.00.00.01.00"
  54. PCR = "0"
  55. LANname = ""
  56.  
  57.  
  58. BusInterfaceType = 5 
  59. BusNumber = 0 
  60.  
  61. ProductSoftwareALANEDescription       = "Adaptec LANE Driver"
  62. ProductHardwareALANEDescription       = "Adaptec LANE Driver"
  63. ProductSoftwareALANETitle     = "ALANE Driver"
  64. ProductHardwareALANETitle     = "Adaptec LANE Adapter (ELAN "
  65. ParamInf        = "NCPARAM.INF"
  66. UtilityInf      = "UTILITY.INF"
  67. subroutineinf   = "SUBROUTN.INF"
  68. SoftwareType    = "driver"
  69. Exit_Code       = 0
  70. NetEventDLL     = "%SystemRoot%\System32\netevent.dll"
  71. IoLogMsgDLL     = "%SystemRoot%\System32\IoLogMsg.dll"
  72. EthernetCards  = { ALANE0,ALANE1,ALANE2,ALANE3 }
  73. NetCardDescription = Adaptec ALANE Adapter (ELAN1)
  74. NetCardInstData =  591737890
  75. Manufacturer    = "Microsoft"
  76. ProductMajorVersion     = "1"
  77. ProductMinorVersion     = "1"
  78. ProductVersion  = $(ProductMajorVersion)"."$(ProductMinorVersion)
  79. ProductSoftwareName     = "alane"
  80. ProductSoftwareImagePath = "%SystemRoot%\System32\drivers\alane.sys"
  81. NetRuleSoftwareType     = "alaneSys ndisDriver alaneDriver"
  82. NetRuleSoftwareUse      = $(SoftwareType)
  83. NetRuleSoftwareBindForm =  { " ""alaneDriver"" yes no container " }
  84. NetRuleSoftwareClass    = { "alaneDriver basic" }
  85. NetRuleSoftwareBindable = { "alaneDriver alaneAdapter non exclusive 100" }
  86. ProductHardwareName     = "alane"
  87. NetRuleHardwareType     = "alane alaneAdapter"
  88. NetRuleHardwareBindForm = " yes yes container "
  89. NetRuleHardwareClass    = { "alaneAdapter basic" }
  90. ProductKeyName  = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
  91. ParamKeyName    = $(!NTN_ServiceBase)$(ProductHardwareName)"\Parameters"
  92. SNMPService    = "System\CurrentControlSet\Services"
  93. SNMPSoftware    = "SOFTWARE\Microsoft"
  94. InstallDirectory = $(!STF_NTPATH)\ADPTAATM
  95. ConfigDirectory = $(InstallDirectory)\CONFIG
  96.  
  97. [GeneralConstants]
  98. from      = ""
  99. to        = ""
  100. ExitCodeOk     = 0
  101. ExitCodeCancel = 1
  102. ExitCodeFatal  = 2
  103. KeyNull         = ""
  104. MAXIMUM_ALLOWED   = 33554432
  105. RegistryErrorIndex = NO_ERROR
  106. KeyProduct      = ""
  107. KeyParameters   = ""
  108. TRUE            = 1
  109. FALSE           = 0
  110. NoTitle            = 0
  111. ExitState   = "Active"
  112. OldVersionExisted = $(FALSE)
  113. DriverPath      = $(!STF_NTPATH)\drivers
  114.  
  115. [date]
  116.     Now = {} ? $(!LIBHANDLE) GetSystemDate
  117.  
  118. [Identify]
  119.     read-syms Identification
  120.     set Status     = STATUS_SUCCESSFUL
  121.     set Identifier = $(OptionType)
  122.     set Media      = #("Source Media Descriptions", 1, 1)
  123.     Return $(Status) $(Identifier) $(Media)
  124. [ReturnOptions]
  125.     set Status        = STATUS_FAILED
  126.     set OptionList     = {}
  127.     set OptionTextList = {}
  128.     set LanguageList = ^(LanguagesSupported, 1)
  129.     Ifcontains(i) $($0) in $(LanguageList)
  130.         ifstr(i) $($1) == ""
  131.            goto returnoptions
  132.         endif
  133.         set PlatformList = ^(PlatformsSupported, 1)
  134.         Ifcontains(i) $($1) in $(PlatformList)
  135.            goto returnoptions
  136.         else
  137.            set Status = STATUS_NOTSUPPORTED
  138.            goto finish_ReturnOptions
  139.         endif
  140.     else
  141.         set Status = STATUS_NOLANGUAGE
  142.         goto finish_ReturnOptions
  143.     endif
  144. returnoptions = +
  145.     set OptionList     = ^(Options, 1)
  146.     set OptionTextList = ^(OptionsText$($0), 1)
  147.     set Status         = STATUS_SUCCESSFUL
  148. finish_ReturnOptions = +
  149.     Return $(Status) $(OptionList) $(OptionTextList)
  150.  
  151. [InstallOption]
  152.     set Option   = $($1)
  153.     set SrcDir   = $($2)
  154.     set AddCopy  = $($3)
  155.     set DoCopy   = $($4)
  156.     set DoConfig = $($5)
  157.     set LanguageList = ^(LanguagesSupported, 1)
  158.     Ifcontains(i) $($0) NOT-IN $(LanguageList)
  159.         Return STATUS_NOLANGUAGE
  160.     endif
  161.     Debug-Output "OEMNADWD.INF: STF_CWDIR is: "$(!STF_CWDIR)
  162.     Debug-Output "OEMNADWD.INF: STF_LANGUAGE is: "$(!STF_LANGUAGE)
  163.     set-subst LF = "\n"
  164.     read-syms GeneralConstants
  165.     read-syms FileConstants
  166.     read-syms DialogConstantsENG
  167.     ifstr(i) $(!NTN_Origination) == "NCPA"
  168.         set Continue = $(OK)
  169.     endif
  170.     read-syms FileConstantsENG
  171.     detect date
  172.     set-title  $(Function$(Option)Title)
  173.     set to   = Begin
  174.     set from = Begin
  175.     set CommonStatus = STATUS_SUCCESSFUL
  176.     EndWait
  177. Begin = +
  178.     set ActivateDetection = FALSE
  179.     Ifstr(i) $(!NTN_InstallMode) == deinstall
  180.         set StartLabel = removeadapter
  181.     else-Ifstr(i) $(!NTN_InstallMode) == Update
  182.         set StartLabel = UpgradeSoftware
  183.     else-Ifstr(i) $(!NTN_InstallMode) == bind
  184.         set StartLabel = bindingadapter
  185.     else-Ifstr(i) $(!NTN_InstallMode) == configure
  186.         set CommonStatus = STATUS_REBOOT
  187.         set ActivateDetection = TRUE
  188.         set StartLabel = configureadapter
  189.         Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  190.             Debug-Output "Cannot configure the Adaptec ATM driver software."
  191.             Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
  192.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  193.                 Debug-Output "ShellCode error: cannot get an error string."
  194.                 goto ShellCodeError
  195.             endif
  196.             set Error = $($R0)
  197.             set from = end
  198.             set to = end
  199.             goto nonfatalinfo
  200.         endif
  201.     else
  202.         Debug-Output "Adaptec: PrepareDetection start"
  203.         Shell "" PrepareDetectionDll "AdaptecNCDET.DLL"
  204.         Ifstr(i) $($R0) == STATUS_SUCCESSFUL
  205.             ifstr(i) $(DoCopy) == "YES"
  206.                 Install Install-Detection-Dll
  207.             endif
  208.             Shell "NCPARAM.INF" Param_ControlDetection DTEND
  209.             Shell "NCPARAM.INF" Param_ControlDetection DTSTART
  210.         Endif
  211.         Debug-Output "Adaptec: PrepareDetection end"
  212.         set StartLabel = installadapter
  213.         set OEM_ABANDON_OPTIONS = {}
  214.         set OEM_ABANDON_SOFTWARE = FALSE
  215.         set OEM_ABANDON_ON = TRUE
  216.         set ActivateDetection = TRUE
  217.     endif
  218.     Debug-Output "OEMNADWD.INF: =================================================="
  219.     Debug-Output "OEMNADWD.INF: STF_CWDIR is: "$(!STF_CWDIR)
  220.     Debug-Output "OEMNADWD.INF: STF_LANGUAGE is: "$(!STF_LANGUAGE)
  221.     Debug-Output "OEMNADWD.INF: Option is: "$(Option)
  222.     Debug-Output "OEMNADWD.INF: !STF_NCDETECT  is: "$(!STF_NCDETECT)
  223.     Debug-Output "OEMNADWD.INF: !STF_NCOPTION  is: "$(!STF_NCOPTION)
  224.     Debug-Output "OEMNADWD.INF: !STF_NCDETCARD is: "$(!STF_NCDETCARD)
  225.     Debug-Output "OEMNADWD.INF: !STF_NCDETINFO is: "$(!STF_NCDETINFO)
  226.     Debug-Output "OEMNADWD.INF: =================================================="
  227.     Set DetectedCard = FALSE
  228.     Goto skipdetection
  229.     Ifstr(i) $(ActivateDetection) != TRUE
  230.         Goto skipdetection
  231.     Endif
  232.  
  233. ;    New piece of code starts
  234.      set-hextodec VendorId = 9004    ;36868        ; 9004h
  235.      set-hextodec DeviceId = 5900    ;22784        ; 5900h
  236.      Shell $(UtilityInf), GetPCIInformation, $(VendorId) $(DeviceId)
  237.      ifint $($ShellCode) != $(!SHELL_CODE_OK)
  238.     goto fataldetect
  239.      endif
  240.      
  241.      ifstr(i) $($R0) != {}
  242.     set DetectedCard = TRUE
  243.         Debug-Output "OEMNADWD.INF: Setting DetectedCard to TRUE"
  244.      else
  245.          goto fataldetect
  246.      endif
  247.  
  248.  
  249. skipdetection =+
  250.     goto $(StartLabel)
  251.  
  252. installadapter = +
  253. ;   Start registering
  254.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  255.     Ifstr $(KeyProduct) != $(KeyNull)
  256.         CloseRegKey $(KeyProduct)
  257.         ifstr(i) !(NTN_RegBase) == $(ProductKeyName)
  258.            Shell $(UtilityInf), VerExistedDlg, $(ProductSoftware$(Option)Title),+
  259.                $(ProductVersion)
  260.            ifint $($ShellCode) != $(!SHELL_CODE_OK)
  261.                Debug-Output "ShellCode error: cannot get an error string."
  262.                goto ShellCodeError
  263.            endif
  264.            goto end
  265.         else
  266.            Shell $(UtilityInf), CardExistedDlg
  267.            ifint $($ShellCode) != $(!SHELL_CODE_OK)
  268.                Debug-Output "ShellCode error: cannot get an error string."
  269.                goto ShellCodeError
  270.            endif
  271.            ifstr(i) $($R1) != "OK"
  272.                Set CommonStatus = STATUS_USERCANCEL
  273.                goto end
  274.            endif
  275.            set OldVersionExisted = $(TRUE)
  276.         endif
  277.     endif
  278.  
  279. ;
  280. ;   if we already have a card , then let us ask for the src directory
  281. ;   from the user
  282.     ifint $(OldVersionExisted) == $(FALSE)
  283.       ifstr(i) $(!NTN_InstallMode) == "install"
  284.         ifstr(i) $(DoCopy) == "YES"
  285.         Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
  286.         Ifint $(ShellCode) != $(!SHELL_CODE_OK)
  287.             Goto ShellCodeError 
  288.         Else-Ifstr(i) $($R0) == STATUS_FAILED
  289.             Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
  290.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  291.                 goto ShellCodeError 
  292.             endif
  293.             Set Error = $($R0)
  294.             Goto fatal
  295.         Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
  296.             Goto successful
  297.         Endif
  298.  
  299.         Set SrcDir = $($R1)
  300.          endif
  301.        endif
  302.      endif
  303.  
  304. ;
  305. ;   install the DLLs
  306. ;
  307.     install "Install-DLLs"
  308.  
  309. ;
  310. ;    set the virtual elan number
  311. ;
  312.     Ifstr $(Option) == "ALANE0"
  313.         set ELANNumber = 0 
  314.     endif
  315.  
  316.     Ifstr $(Option) == "ALANE1"
  317.         set ELANNumber = 1 
  318.     endif
  319.  
  320.     Ifstr $(Option) == "ALANE2"
  321.         set ELANNumber = 2 
  322.     endif
  323.  
  324.     Ifstr $(Option) == "ALANE3"
  325.         set ELANNumber = 3 
  326.     endif
  327.  
  328. ;
  329. ;   load the dll for configuration
  330. ;
  331.     LoadLibrary "Setup Disk #1" $(SrcDir)\adptalan.dll LibHandle
  332. ;
  333. ;   check if the ELAN is already installed
  334. ;
  335.     LibraryProcedure DLLResponse $(LibHandle) AlanCheckElanInstallStatus $(ELANNumber) $(InstallDirectory)
  336.  
  337.     ifstr(i) $(DLLResponse) == 0
  338.         set CommonStatus = STATUS_USERCANCEL
  339.         FreeLibrary $(LibHandle)
  340.         Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "NONFATAL" ,"ELAN "$(ELANNumber)" already installed. Cannot install the same ELAN twice"
  341.         goto end 
  342.     endif
  343.  
  344. ;
  345. ;   call the funtion to display the configuration dll and also get the
  346. ;   autostart option
  347. ;
  348.     LibraryProcedure DLLResponse $(LibHandle) AlanConfigAlan $(ELANNumber) $(InstallDirectory)
  349.  
  350. ;
  351. ;   check if the user pressed CANCEL
  352. ;
  353.  
  354.     ifstr(i) $(DLLResponse) == 0
  355.         set CommonStatus = STATUS_USERCANCEL
  356.         FreeLibrary $(LibHandle)
  357.         goto end 
  358.     endif
  359.  
  360.     LibraryProcedure MTUSize $(LibHandle) AlanGetMTUSize
  361.     LibraryProcedure ELANType $(LibHandle) AlanGetLANType
  362.     LibraryProcedure ServerType $(LibHandle) AlanGetServerType
  363.     LibraryProcedure UNIversion $(LibHandle) AlanGetUNIversion
  364.     LibraryProcedure ServerAddress $(LibHandle) AlanGetServerAddress
  365.     LibraryProcedure PCR $(LibHandle) AlanGetPCR
  366.     LibraryProcedure LANname $(LibHandle) AlanGetLANname
  367.  
  368.     FreeLibrary $(LibHandle)
  369.  
  370.     Ifstr(i) $(DetectedCard) != TRUE
  371.         Goto adaptersetup
  372.     Endif
  373.     StartWait
  374.     Shell $(ParamInf) Param_QueryCard $(!STF_NCDETCARD)
  375.     EndWait
  376.     Ifstr(i) $($R0) != STATUS_SUCCESSFUL
  377.         Goto adaptersetup
  378.     Endif
  379.     Set DetectedParams = $($R1)
  380.     Debug-Output "OEMNADWD.INF: Calling Param_SetDefaults to merge detected params"
  381.     Shell $(ParamInf) Param_SetDefaults $(DetectedParams)
  382.     goto adapteroptions
  383.  
  384. configureadapter = +
  385. Ifstr $(KeyProduct) == $(KeyNull)
  386.         OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) KeyProduct
  387.         Ifstr $(KeyProduct) == $(KeyNull)
  388.             set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
  389.             Debug-Output "Cannot find component product key"
  390.             goto fatalregistry
  391.         Endif
  392.     Endif
  393.     Debug-Output "INF: Shelling to FindService"
  394.     Shell $(UtilityInf) FindService, $(KeyProduct)
  395.     Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  396.         Debug-Output "INF: FindService shell failure"
  397.         Goto ShellCodeError
  398.     Endif
  399.     Ifstr(i) $($R0) != NO_ERROR
  400.         Debug-Output "INF: FindService Shell error: "$($R0)
  401.         Goto fatalregistry
  402.     endif
  403.     set KeyParameters = $($R2)
  404.     CloseRegKey $($R1)
  405.     Ifstr $(KeyParameters) == $(KeyNull)
  406.         set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
  407.         Debug-Output "Cannot find component service"
  408.         goto fatalregistry
  409.     endif
  410.  
  411. ;
  412. ;   Get the Vitual lan number for this adapter
  413. ;
  414.     GetRegValue $(KeyParameters) "AlaneInterfaceNum" ELANNumberData
  415.     ifint $(!RegLastError) == 0
  416.         set ELANNumber = *($(ELANNumberData),4)
  417.     else
  418.         Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "NONFATAL" ,"Unable to get AlaneInterfaceNum from registry"
  419.         set CommonStatus = STATUS_USERCANCEL 
  420.         goto end 
  421.     endif
  422.  
  423.     LoadLibrary "Setup Disk #1" $(!STF_WINDOWSSYSPATH)\adptalan.dll LibHandle 
  424.  
  425.     LibraryProcedure DLLResponse $(LibHandle) AlanConfigAlan $(ELANNumber) $(InstallDirectory)
  426.  
  427.     ifstr(i) $(DLLResponse) == 0 
  428.         set CommonStatus = STATUS_USERCANCEL 
  429.         FreeLibrary $(LibHandle) 
  430.         goto end 
  431.     endif 
  432.     
  433.     LibraryProcedure MTUSize $(LibHandle) AlanGetMTUSize
  434.     LibraryProcedure ELANType $(LibHandle) AlanGetLANType
  435.     LibraryProcedure ServerType $(LibHandle) AlanGetServerType
  436.     LibraryProcedure UNIversion $(LibHandle) AlanGetUNIversion
  437.     LibraryProcedure ServerAddress $(LibHandle) AlanGetServerAddress
  438.     LibraryProcedure PCR $(LibHandle) AlanGetPCR
  439.     LibraryProcedure LANname $(LibHandle) AlanGetLANname
  440.  
  441.     FreeLibrary $(LibHandle) 
  442.  
  443.     set OldVersionExisted = $(TRUE )
  444.     set ValueName = ""
  445.     set ValueData = ""
  446.     set ValueStr  = ""
  447.     set ValueList = {}
  448.     goto adaptersetup 
  449. adaptersetup =+
  450.     Ifstr(i) $(DetectedCard) == TRUE
  451.         Ifstr(i) $(!STF_INSTALL_MODE) != CUSTOM
  452.             Goto adapterverify
  453.         Endif
  454.     Endif
  455.     goto adapteroptions
  456. adapteroptions = +
  457.     set from = adapteroptions
  458.     ifstr(i) $(!STF_GUI_UNATTENDED) == "YES"
  459.         ifstr(i) $(!AutoNetInterfaceType) != ""
  460.             set BusInterfaceType = $(!AutoNetInterfaceType)
  461.         else
  462.             set BusInterfaceType = 1    
  463.         endif
  464.         ifstr(i) $(!AutoNetBusNumber) != ""
  465.             set BusNumber = $(!AutoNetBusNumber)
  466.         else
  467.             set BusNumber = 0
  468.         endif
  469.         goto adapterverify
  470.     endif
  471.  
  472.     ifstr(i) $(!STF_NCDETINFO) == {}
  473.         set BusInterfaceType = 5
  474.     Shell $(UtilityInf),GetBusTypeDialog,$(ProductHardware$(Option)Description) $(BusInterfaceType) $(BusNumber)
  475.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  476.             Debug-Output "ShellCode error."
  477.             goto ShellCodeError
  478.         endif
  479.         set BusInterfaceType = $($R1)
  480.         set BusNumber = $($R2)
  481.     else
  482.         set BusInterfaceType = *($(!STF_NCDETINFO),5)
  483.         set BusNumber = *($(!STF_NCDETINFO),6)
  484.     endif
  485.  
  486. adapterverify =+
  487.     Ifstr(i) $(DetectedCard) != TRUE
  488.         Goto skipoptions
  489.     Endif
  490.     Debug-Output "OEMNADWD.INF: Calling Param_VerifyCard"
  491.     Shell $(ParamInf) Param_VerifyCard $(!STF_NCDETCARD)
  492.     Ifstr(i) $($R0) == STATUS_SUCCESSFUL
  493.         Debug-Output "OEMNADWD.INF: Param_VerifyCard succeeded"
  494.         Goto skipoptions
  495.     Endif
  496.     Set from = adapteroptions
  497.     Set to = skipoptions
  498.     Shell $(UtilityInf),RegistryErrorString,VERIFY_WARNING
  499.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  500.         Debug-Output "ShellCode error: cannot get an error string."
  501.         goto ShellCodeError
  502.     endif
  503.     set Error = $($R0)
  504.     Goto Warning
  505. skipoptions = +
  506.     ifint $(OldVersionExisted) == $(TRUE)
  507.         ifstr(i) $(!NTN_InstallMode) == configure
  508.             goto writeparameters
  509.         endif
  510.     endif
  511.     StartWait
  512.     ifint $(OldVersionExisted) == $(FALSE)
  513.         ifstr(i) $(!NTN_InstallMode) == "install"
  514.            Ifstr(i) $(DoCopy) == "YES"
  515. ;              Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
  516. ;              Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  517. ;                  Goto ShellCodeError
  518. ;              Else-Ifstr(i) $($R0) == STATUS_FAILED
  519. ;                  Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
  520. ;                  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  521. ;                      goto ShellCodeError
  522. ;                  endif
  523. ;                  set Error = $($R0)
  524. ;                  Goto fatal
  525. ;              Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
  526. ;                  Goto successful
  527. ;              Endif
  528. ;              Set SrcDir = $($R1)
  529.            Endif
  530.  
  531.            install "Install-Option"
  532.            ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  533.               Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
  534.               ifint $($ShellCode) != $(!SHELL_CODE_OK)
  535.                   goto ShellCodeError
  536.               endif
  537.               set Error = $($R0)
  538.               goto fatal
  539.            endif
  540.         endif
  541.         Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
  542.             $(ProductSoftwareName), +
  543.             $(ProductSoftwareName), +
  544.             $(ProductSoftwareALANETitle), $(STF_CONTEXTINFNAME), +
  545.             $(ProductSoftwareImagePath), "kernel", "NDIS", {"atmo"}, "",+
  546.             $(NetEventDLL)
  547.  
  548.  
  549.         Set OEM_ABANDON_SOFTWARE = TRUE
  550.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  551.             Debug-Output "ShellCode error"
  552.             goto ShellCodeError
  553.         endif
  554.         set RegistryErrorIndex = $($R0)
  555.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  556.             EndWait
  557.             Debug-Output "Registry error: add software components"
  558.             CloseRegKey $($R1)
  559.             CloseRegKey $($R2)
  560.             CloseRegKey $($R3)
  561.             CloseRegKey $($R4)
  562.             CloseRegKey $($R5)
  563.             goto fatalregistry
  564.         endif
  565.         Set SoftProductKey      = $($R1)
  566.         Set SoftNetRuleKey      = $($R2)
  567.         Set SoftServiceKey      = $($R3)
  568.         Set SoftParameterKey    = $($R4)
  569.         Set SoftLinkageKey      = $($R5)
  570.  
  571.         set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
  572.                            {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)},+
  573.                            {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)},+
  574.                            {Title,$(NoTitle),$(!REG_VT_SZ),"ALANE Driver" },+
  575.                           {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareALANEDescription)},+
  576.                            {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareName)},+
  577.                            {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  578.         Shell  $(UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList)
  579.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  580.             Debug-Output "ShellCode error."
  581.             goto ShellCodeError
  582.         endif
  583.         set RegistryErrorIndex = $($R0)
  584.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  585.             EndWait
  586.             Debug-Output "Resgistry error: add value list."
  587.             CloseRegKey $(SoftProductKey)
  588.             CloseRegKey $(SoftNetRuleKey)
  589.             CloseRegKey $(SoftServiceKey)
  590.             CloseRegKey $(SoftParameterKey)
  591.             CloseRegKey $(SoftLinkageKey)
  592.             goto fatalregistry
  593.         endif
  594.         set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareType)},+
  595.                             {use,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareUse)}, +
  596.                             {bindform,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareBindForm)}, +
  597.                             {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareClass)}, +
  598.                             {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareBindable)}, +
  599.                             {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  600.         Shell  $(UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList)
  601.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  602.             Debug-Output "ShellCode error."
  603.             goto ShellCodeError
  604.         endif
  605.         set RegistryErrorIndex = $($R0)
  606.         CloseRegKey $(SoftProductKey)
  607.         CloseRegKey $(SoftNetRuleKey)
  608.         CloseRegKey $(SoftServiceKey)
  609.         CloseRegKey $(SoftParameterKey)
  610.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  611.             EndWait
  612.             Debug-Output "Resgitry error: add value list."
  613.             goto fatalregistry
  614.         endif
  615.     endif
  616.  
  617.     Shell $(UtilityInf), AddHardwareComponent, $(ProductHardwareName),$(STF_CONTEXTINFNAME),$(ProductKeyName)
  618.     ifint $($R4) != -1
  619.         Set OEM_ABANDON_OPTIONS = >($(OEM_ABANDON_OPTIONS), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$($R4))
  620.     endif
  621.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  622.         Debug-Output "Cannot add hardware component"
  623.         goto ShellCodeError
  624.     endif
  625.     set RegistryErrorIndex = $($R0)
  626.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  627.         EndWait
  628.         Debug-Output "Registry error: add hardware component"
  629.         Debug-Output $(RegistryErrorIndex)
  630.         CloseRegKey $($R1)
  631.         CloseRegKey $($R2)
  632.         CloseRegKey $($R3)
  633.         goto fatalregistry
  634.     endif
  635.     set KeyParameters = $($R3)
  636.     set KeyAdapterRules = $($R2)
  637.     set AdapterNumber = $($R4)
  638.     set LaneNumber    = "0"
  639.     set NewValueList = {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
  640.                        {Title,$(NoTitle),$(!REG_VT_SZ),"["$($R4)"] "$(ProductHardwareALANETitle)$(ELANNumber)")"},+
  641.                        {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareALANEDescription)},+
  642.                        {ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
  643.                        {ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+
  644.                        {InstallData,$(NoTitle),$(!REG_VT_DWORD), $(NetCardInstData))}, +
  645.                        {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  646.     Shell  $(UtilityInf), AddValueList, $($R1), $(NewValueList)
  647.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  648.         Debug-Output "ShellCode error"
  649.         goto ShellCodeError
  650.     endif
  651.     CloseRegKey $($R1)
  652.     set TempProdName = """"$(ProductHardwareName)$(AdapterNumber)""""
  653.     set TempBindForm = $(TempProdName)$(NetRuleHardwareBindForm)
  654.     set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleHardwareType)},+
  655.                         {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
  656.                         {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleHardwareClass)}, +
  657.                        {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  658.     Shell  $(UtilityInf), AddValueList, $(KeyAdapterRules), $(NewValueList)
  659.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  660.         Debug-Output "ShellCode error."
  661.         goto ShellCodeError
  662.     endif
  663.     set RegistryErrorIndex = $($R0)
  664.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  665.         EndWait
  666.         Debug-Output "Resgitry error: add value list."
  667.         CloseRegKey $(KeyParameters)
  668.         CloseRegKey $(KeyAdapterRules)
  669.         goto fatalregistry
  670.     endif
  671.     CloseRegKey $(KeyAdapterRules)
  672.  
  673.     goto writeparameters
  674. writeparameters = +
  675.     IfContains $(Option) in $(EthernetCards)
  676.         set CardMediaType = 1
  677.         set NewValueList = {+
  678.         {BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusInterfaceType)},+
  679.         {BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNumber)},+
  680.         {PortIndex,$(NoTitle),$(!REG_VT_SZ),$(PortIndex)},+
  681.         {ELANType,$(NoTitle),$(!REG_VT_SZ),$(ELANType)},+
  682.         {AlaneInterfaceNum,$(NoTitle),$(!REG_VT_SZ),$(ELANNumber)},+
  683.         {MTUSize,$(NoTitle),$(!REG_VT_SZ),$(MTUSize)},+
  684.         {ServerType,$(NoTitle),$(!REG_VT_SZ),$(ServerType)},+
  685.         {UNIversion,$(NoTitle),$(!REG_VT_SZ),$(UNIversion)},+
  686.         {ServerAddress,$(NoTitle),$(!REG_VT_SZ),$(ServerAddress)},+
  687.         {PCR,$(NoTitle),$(!REG_VT_SZ),$(PCR)},+
  688.         {LANname,$(NoTitle),$(!REG_VT_SZ),$(LANname)},+
  689.                 }
  690.         Shell  $(UtilityInf), AddValueList, $(KeyParameters), $(NewValueList)
  691.         ifstr(i) $(!STF_GUI_UNATTENDED) == "YES"
  692.             Shell $(UtilityInf),AddDefaultNetCardParameters,$(KeyParameters)
  693.         endif
  694.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  695.             Debug-Output "ShellCode error."
  696.             goto ShellCodeError
  697.         endif
  698.         set RegistryErrorIndex = $($R0)
  699.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  700.             Debug-Output "Registry error: Add value list"
  701.             CloseRegKey $(KeyParameters)
  702.             goto fatalregistry
  703.         endif
  704.     endif
  705.     CloseRegKey $(KeyParameters)
  706.     EndWait
  707.       goto successful
  708.  
  709. bindingadapter =+
  710.     set Error = "Binding: Sorry, not yet implemented."
  711.     goto fatal
  712. removeadapter = +
  713.     Ifstr $(KeyProduct) == $(KeyNull)
  714.         OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) KeyProduct
  715.         Ifstr $(KeyProduct) == $(KeyNull)
  716.             set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
  717.             Debug-Output "Cannot find component product key"
  718.             goto fatalregistry
  719.         Endif
  720.     Endif
  721.     Debug-Output "INF: Shelling to FindService"
  722.     Shell $(UtilityInf) FindService, $(KeyProduct)
  723.     Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  724.         Debug-Output "INF: FindService shell failure"
  725.         Goto ShellCodeError
  726.     Endif
  727.     Ifstr(i) $($R0) != NO_ERROR
  728.         Debug-Output "INF: FindService Shell error: "$($R0)
  729.         Goto fatalregistry
  730.     endif
  731.     set KeyParameters = $($R2)
  732.     CloseRegKey $($R1)
  733.     Ifstr $(KeyParameters) == $(KeyNull)
  734.         set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
  735.         Debug-Output "Cannot find component service"
  736.         goto fatalregistry
  737.     endif
  738.  
  739. ;
  740. ;   Get the Vitual lan number for this adapter
  741. ;
  742.     GetRegValue $(KeyParameters) "AlaneInterfaceNum" ELANNumberData
  743.     ifint $(!RegLastError) == 0
  744.         set ELANNumber = *($(ELANNumberData),4)
  745.     else
  746.         Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "NONFATAL" ,"Unable to get AlaneInterfaceNum from registry"
  747.         set CommonStatus = STATUS_USERCANCEL 
  748.         goto end 
  749.     endif
  750.  
  751. ;
  752. ;      Get the reference count for the adapter
  753. ;
  754.   OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\alane\CurrentVersion"  $(!REG_KEY_ALL_ACCESS) RefCountHandle
  755.    ifstr $(RefCountHandle) == $(KeyNull)
  756.        set RegistryErrorIndex = UNABLE_OPEN_MICROSOFT_KEY
  757.        Debug-Output "Cannot open Microsoft Key"
  758.        goto fatalregistry
  759.    endif
  760.    GetRegValue $(RefCountHandle) "RefCount" RefCountData
  761.    ifint $(!RegLastError) == 0
  762.     set RefCount = *($(RefCountData),4)
  763.    else
  764.         Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "NONFATAL" ,"Unable to get Reference count"
  765.    endif
  766.  
  767. ;
  768. ;    Get the inffile associated with this adapter
  769. ;
  770.   OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\alane\CurrentVersion\NetRules"  $(!REG_KEY_ALL_ACCESS) InfNameHandle
  771.    ifstr $(InfNameHandle) == $(KeyNull)
  772.        set RegistryErrorIndex = UNABLE_OPEN_MICROSOFT_KEY
  773.        Debug-Output "Cannot open Microsoft Key"
  774.        goto fatalregistry
  775.    endif
  776.    GetRegValue $(InfNameHandle) "InfName" InfNameData
  777.    ifint $(!RegLastError) == 0
  778.         set InfName = *($(InfNameData),4)
  779.     ifint $(RefCount) == 1
  780.             AddFileToDeleteList $(!STF_WINDOWSSYSPATH)\$(InfName)
  781.     endif
  782.    endif
  783.    CloseRegKey $(InfNameHandle)
  784.  
  785.     Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  786.         Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  787.             $(ProductSoftwareName)
  788.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  789.             Debug-Output "ShellCode error"
  790.             goto ShellCodeError
  791.         endif
  792.         set RegistryErrorIndex = $($R0)
  793.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  794.             goto fatalregistry
  795.         endif
  796.   else
  797.         Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  798.             $(ProductSoftwareName), $(!NTN_RegBase)
  799.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  800.             Debug-Output "ShellCode error"
  801.             goto ShellCodeError
  802.         endif
  803.         set RegistryErrorIndex = $($R0)
  804.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  805.             goto fatalregistry
  806.         endif
  807.     endif
  808.  
  809.    ; Start Cleaning Up
  810.     ifint $(RefCount) == 1
  811.       AddFileToDeleteList $(!STF_WINDOWSSYSPATH)\drivers\alane.sys
  812.        AddFileToDeleteList $(!STF_WINDOWSSYSPATH)\adptalan.dll
  813.     endif
  814.     AddFileToDeleteList $(!STF_WINDOWSSYSPATH)\ADPTAATM\CONFIG\ALANE$(ELANNumber).db
  815.  
  816.     goto end
  817.  
  818. UpgradeSoftware = + 
  819. OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  820.     Ifstr $(KeyProduct) != $(KeyNull)
  821.         install "Install-Update"
  822.         ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  823.             goto fatal
  824.         endif
  825.         SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)}
  826.         SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)}
  827.         CloseRegKey $(KeyProduct)
  828.     else
  829.         goto fatalregistry
  830.     endif
  831.     goto end
  832. successful = +
  833.     goto end
  834. abandon = +
  835.     ForListDo $(OEM_ABANDON_OPTIONS)
  836.         Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  837.             $(ProductSoftwareName), $($)
  838.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  839.             Debug-Output "ShellCode error"
  840.             goto ShellCodeError
  841.         endif
  842.         set RegistryErrorIndex = $($R0)
  843.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  844.             goto fatalregistry
  845.         endif
  846.     EndForListDo
  847.     Ifstr(i) $(OEM_ABANDON_SOFTWARE) == TRUE
  848.         Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  849.             $(ProductSoftwareName), FALSE
  850.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  851.             Debug-Output "ShellCode error"
  852.             goto ShellCodeError
  853.         endif
  854.         set RegistryErrorIndex = $($R0)
  855.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  856.             goto fatalregistry
  857.         endif
  858.     endif
  859.     goto end
  860. warning = +
  861.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
  862.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  863.         goto ShellCodeError
  864.     endif
  865.     ifstr(i) $($R1) == "OK"
  866.         goto $(to)
  867.     else-ifstr(i) $($R1) == "CANCEL"
  868.         goto $(from)
  869.     else
  870.         goto "end"
  871.     endif
  872. nonfatalinfo = +
  873.     Set CommonStatus = STATUS_USERCANCEL
  874.     Set Severity = STATUS
  875.     goto nonfatalmsg
  876. nonfatal = +
  877.     Set Severity = NONFATAL
  878.     goto nonfatalmsg
  879. nonfatalmsg = +
  880.     ifstr(i) $(Error) == ""
  881.         Set Severity = NONFATAL
  882.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  883.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  884.             goto ShellCodeError
  885.         endif
  886.         set Error = $($R0)
  887.     endif
  888.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
  889.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  890.         goto ShellCodeError
  891.     endif
  892.     ifstr(i) $($R1) == "OK"
  893.         goto $(from)
  894.     else
  895.         goto "end"
  896.     endif
  897. fatalregistry = +
  898.     Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
  899.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  900.         goto ShellCodeError
  901.     endif
  902.     set Error = $($R0)
  903.     goto fatal
  904. fataldetect = +
  905.     Shell $(UtilityInf),RegistryErrorString,CANNOT_DETECT
  906.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  907.         Debug-Output "ShellCode error: cannot get an error string."
  908.         goto ShellCodeError
  909.     endif
  910.     set Error = $($R0)
  911.     Goto fatal
  912. fatal = +
  913.     ifstr(i) $(Error) == ""
  914.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  915.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  916.             goto ShellCodeError
  917.         endif
  918.         set Error = $($R0)
  919.     endif
  920.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error)
  921.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  922.         goto ShellCodeError
  923.     endif
  924.     goto setfailed
  925. ShellCodeError = +
  926.     set DlgType      = "MessageBox"
  927.     set STF_MB_TITLE = $(ShellCodeErrorTitle)
  928.     set STF_MB_TEXT  = $(ShellCodeErrorText)
  929.     set STF_MB_TYPE  = 1
  930.     set STF_MB_ICON  = 3
  931.     set STF_MB_DEF   = 1
  932.     ui start "Error Message"
  933.     goto setfailed
  934. setfailed = +
  935.     set CommonStatus = STATUS_FAILED
  936.     ifstr(i) $(OEM_ABANDON_ON) == TRUE
  937.         set OEM_ABANDON_ON = FALSE
  938.         goto abandon
  939.     endif
  940.     goto end
  941. end = +
  942.     goto term
  943. term = +
  944. Return $(CommonStatus)
  945.  
  946. [Install-DLLs]
  947.     set STF_VITAL = ""
  948.     ifstr(i) $(AddCopy) == "YES"
  949.       AddSectionFilesToCopyList Files-DLL $(SrcDir) $(!STF_WINDOWSSYSPATH)
  950.     endif
  951.     ifstr(i) $(DoCopy) == "YES"
  952.        set !STF_NCPA_FLUSH_COPYLIST = TRUE
  953.        CopyFilesInCopyList
  954.     endif
  955.     Exit
  956.  
  957. [PrepareDetectionDll]
  958.     Set NewDllName = $($0)
  959.     Set Status = STATUS_FAILED
  960.     read-syms GeneralConstants
  961.     Set DllValueName = "NetcardDlls"
  962.     OpenRegKey $(!REG_H_LOCAL) "" "System\Setup" $(MAXIMUM_ALLOWED) KeySetup
  963.     Ifstr(i) $(KeySetup) == $(KeyNull)
  964.         Debug-Output "Adaptec: cant open System\Setup key"
  965.         Goto PDD_Return
  966.     Endif
  967.     Set DllFound = 0
  968.     GetRegValue $(KeySetup) $(DllValueName) DllNamesValue
  969.     Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
  970.         Debug-Output "Adaptec: cant query NetcardDLLs value"
  971.         Goto PDD_Return
  972.     Endif
  973.     Debug-Output "Adaptec: DllNamesValue = "$(DllNamesValue)
  974.     Set DllNames = *($(DllNamesValue),4)
  975.     Debug-Output "Adaptec: DllNames = "$(DllNames)
  976.     ForListDo $(DllNames)
  977.         Ifstr(i) $($) == $(NewDllName)
  978.             Set DllFound = 1
  979.         Endif
  980.     EndForListDo
  981.     Ifint $(DllFound) == 0
  982.         Set DllNames = >($(DllNames),$(NewDllName))
  983.         Debug-Output "Adaptec: new DllNames = "$(DllNames)
  984.         Set ValueInfo = {$(DllValueName), $(NoTitle), $(!REG_VT_MULTI_SZ), $(DllNames)}
  985.         SetRegValue $(KeySetup) $(ValueInfo)
  986.         Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS)
  987.             Set Status = STATUS_SUCCESSFUL
  988.         Endif
  989.     Else
  990.         Set Status = STATUS_USERCANCEL
  991.     Endif
  992.     CloseRegKey $(KeySetup)
  993. PDD_Return = +
  994.     Return $(Status)
  995. [Install-Option]
  996.     set STF_VITAL = ""
  997.     ifstr(i) $(AddCopy) == "YES"
  998.         AddSectionFilesToCopyList Files-ALANE $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  999.         AddSectionFilesToCopyList Files-DLL $(SrcDir) $(!STF_WINDOWSSYSPATH)
  1000.     endif
  1001.     ifstr(i) $(DoCopy) == "YES"
  1002.        set !STF_NCPA_FLUSH_COPYLIST = TRUE
  1003.        CopyFilesInCopyList
  1004.     endif
  1005.     ifstr(i) $(DoConfig) == "YES"
  1006.     endif
  1007.     Exit
  1008. [Install-Update]
  1009.    set STF_VITAL        = ""
  1010.    set STF_OVERWRITE    = "VERIFYSOURCEOLDER"
  1011.    AddSectionFilesToCopyList Files-ALANE $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  1012.  
  1013. CopyFilesInCopyList 
  1014.    
  1015. exit
  1016. [Install-Detection-Dll]
  1017. ;   set STF_VITAL        = ""
  1018. ;   set STF_OVERWRITE    = "VERIFYSOURCEOLDER"
  1019. ;   AddSectionFilesToCopyList Files-AdaptecNCDET $(SrcDir) $(!STF_WINDOWSSYSPATH)
  1020. ;   set !STF_NCPA_FLUSH_COPYLIST = TRUE
  1021. ;   CopyFilesInCopyList
  1022.    exit
  1023.  
  1024. [Source Media Descriptions]
  1025. ;     1 = "Setup Disk #1"  , TAGFILE = disk1.w
  1026.       1 = "Windows NT DRVLIB"
  1027.  
  1028. [Signature]
  1029.     FileType = MICROSOFT_DRVLIB_FILE
  1030. [GetSignature]
  1031.     read-syms Signature
  1032.     return $(FileType)
  1033.  
  1034. [ProductType]
  1035. STF_PRODUCT  = Winnt
  1036. STF_PLATFORM = I386
  1037.  
  1038. [Files-Inf]
  1039. 1,    oemsetup.inf,     SIZE=37464,    RENAME=$(!UG_Filename)
  1040.  
  1041. [Files-ALANE]
  1042. 1, alane.sys , SIZE=800800
  1043.  
  1044. [Files-DLL]
  1045. 1, adptalan.dll , SIZE=200000
  1046.  
  1047. [LanguagesSupported]
  1048.     ENG
  1049.  
  1050. [OptionsTextENG]
  1051.     ALANE0 = "Adaptec ATM LAN Emulation Adapter"
  1052.     ALANE1 = "Adaptec Inc. ATM  LANE Adapter 1"
  1053.     ALANE2 = "Adaptec Inc. ATM  LANE Adapter 2"
  1054.     ALANE3 = "Adaptec Inc. ATM  LANE Adapter 3"
  1055.  
  1056. [FileConstantsENG]
  1057. InstallATMOFirst = "Please install Adaptec ATM Adapter driver before installing ALANE driver"
  1058. ProCaption   = "Adaptec ATM LANE Adapter Setup"
  1059. ProCancel    = "Cancel"
  1060. ProCancelMsg = "Adaptec ATM LANE Adapter is not correctly installed.  "+
  1061.                "Are you sure you want to cancel copying files?"
  1062. ProCancelCap = "Network Setup Message"
  1063. ProText1     = "Copying:"
  1064. ProText2     = "To:"
  1065. FunctionALANETitle   = "Adaptec ATM LANE Adapter Setup"
  1066. ShellCodeErrorTitle     = "Error: "$(Function$(Option)Title)
  1067. ShellCodeErrorText      = "Shell Code Error."
  1068. [DialogConstantsENG]
  1069. Help        = "&Help"
  1070. Exit        = "Cancel"
  1071. OK          = "OK"
  1072. HelpContext = ""
  1073. Continue    = "Continue"
  1074. Cancel      = "Cancel"
  1075. [FileDependentDlgENG]
  1076. DlgType = "MultiCombo"
  1077. DlgTemplate = "WD"
  1078. Caption = $(Function$(Option)Title)
  1079. EditTextIn = ""
  1080. EditTextLim = ""
  1081. NotifyFields = {NO, NO, NO}
  1082. HelpContext = $(!IDH_DB_OEMNADAM_INS)
  1083. [DisketteDlgENG]
  1084.     Caption        = "Adaptec LANE Driver Setup"
  1085.     Continue       = "Continue"
  1086.     Cancel         = "Cancel"
  1087.     DlgType        = "Edit"
  1088.     DlgTemplate    = "DISKETTE"
  1089.     DlgText        = $($1)
  1090.     Edit1Label     = ""
  1091.     EditTextIn     = $(Src)
  1092.     EditFocus      = "ALL"